/*
 * @Author: Siogo 你的邮箱
 * @Date: 2025-11-12 11:36:16
 * @LastEditors: Siogo 你的邮箱
 * @LastEditTime: 2025-11-12 11:38:06
 * @FilePath: /frontend/src/enums/detailTabEnum.ts
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
export interface DetailTabItem {
  key: string;
  label: string;
  icon: string;
  i18nKey?: string;
}

export const DetailTabItemEnum = {
  BASE_INFO: {
    key: 'BASE_INFO',
    label: '基础信息',
    icon: 'ant-design:info-circle-outlined',
    i18nKey: 'tb.tabs.baseInfo',
  },
  DATA_SOURCE_INFO: {
    key: 'DATA_SOURCE_INFO',
    label: '数据源信息',
    icon: 'ant-design:cluster-outlined',
    i18nKey: 'tb.tabs.dataSource',
  },
  DATA_RESOURCE: {
    key: 'DATA_RESOURCE',
    label: '数据资源',
    icon: 'ant-design:database-outlined',
    i18nKey: 'tb.tabs.dataResource',
  },
  DATA_PRODUCT: {
    key: 'DATA_PRODUCT',
    label: '数据产品',
    icon: 'ant-design:shopping-outlined',
    i18nKey: 'tb.tabs.dataProduct',
  },
  DETAIL: {
    key: 'DETAIL',
    label: '详情',
    icon: 'ant-design:appstore-outlined',
    i18nKey: 'tb.tabs.detail',
  },
  TELEMETRY: {
    key: 'TELEMETRY',
    label: '数据',
    icon: 'ant-design:line-chart-outlined',
    i18nKey: 'tb.tabs.telemetry',
  },
  TGINGMODEL: {
    key: 'TGINGMODEL',
    label: '物模型',
    icon: 'ant-design:project-outlined',
  },
  TOPIC: {
    key: 'TOPIC',
    label: '连接API',
    icon: 'ant-design:api-outlined',
  },
  CALCULATED: {
    key: 'CALCULATED',
    label: '计算属性',
    icon: 'ant-design:calculator-outlined',
  },
  ALARM: {
    key: 'ALARM',
    label: '告警',
    icon: 'ant-design:alert-outlined',
    i18nKey: 'tb.tabs.alarm',
  },
  EVENT: {
    key: 'EVENT',
    label: '事件',
    icon: 'ant-design:info-circle-outlined',
    i18nKey: 'tb.tabs.event',
  },
  RELATION: {
    key: 'RELATION',
    label: '关联',
    icon: 'ant-design:radar-chart-outlined',
    i18nKey: 'tb.tabs.relation',
  },
  AUDIT_LOG: {
    key: 'AUDIT_LOG',
    label: '审计日志',
    icon: 'ant-design:bars-outlined',
    i18nKey: 'tb.tabs.auditLog',
  },
} as const satisfies Record<string, DetailTabItem>;
